<?php
/**
 * 定义 debug类
 * 
 * 用于程序调试，日志记录
 *
 * @link http://www.milkphp.com/
 * @author donwa <donwa@milkphp.com>
 * @license New BSD License {@link http://www.milkhphp.com/license/}
 * 
 */
class lib_debug{
	/**
	 * 保存日志
	 */
	var $log;
	
	static function _do($type='',$msg='',$code=0){
		static $instance = NULL;
		if(is_null($instance))$instance = new lib_debug();
		if(empty($type))return $instance;
		return $instance->log($type,$msg,$code);
	}

	/**
	 * @param $msg 信息
	 * 
	 * @param $type 类型
	 * -i (info) 通知信息
	 * -d (debug) 调试信息
	 * -s (sql) 数据库信息
	 * -e (error) 错误信息
	 * 
	 * @param $code 错误代码
	 */
	function log($type='',$msg='',$code=0){
		try {
			throw new lib_debug_exception($msg,$code);
		} catch (lib_debug_exception $e) {
			/**
			 * 写入日志
			 */
			$this->log[$type]=$e->info();
		}
		return $this;
	}
	
	function show($type=''){
		if($type=='')
		foreach($this->log as $item){
			print_r($item);
		}
		
	}
}